import { computed } from 'vue'
// 系统打印预设-名字样式枚举
enum NameFormatEnum {
  CN = 'chinese',
  EN = 'english',
  CNEN = 'chineseFirst',
  ENCN = 'englishFirst'
}
/***********************************************************************************
 * @description: 根据系统预设处理中英文名字显示先后
 * @param {*} preset 传递的值与NameFormatEnum枚举成员相同
 * @param {*} cnName 中文字段
 * @param {*} enName 英文字段
 * @return {[string,string]} 数组[显示在前的字段，显示在后的字段]
 ***********************************************************************************/
const useFormatName = computed(() => (preset: string, cnName: string, enName: string) => {
  let first: Nullable<string> = null,
    second: Nullable<string> = null
  switch (preset) {
    case NameFormatEnum.CN:
      first = cnName
      break
    case NameFormatEnum.EN:
      first = enName
      break
    case NameFormatEnum.CNEN:
      first = cnName
      second = enName
      break
    case NameFormatEnum.ENCN:
      first = enName
      second = cnName
      break
    default:
      break
  }
  return [first, second]
})

export default useFormatName
